package com.ruoyi.gybj.domain;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 报警规则对象 gybj_alarm_rules
 * 
 * @author ruoyi
 * @date 2025-11-19
 */
public class AlarmRules extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 点位id */
    @Excel(name = "点位id")
    private Long pointId;

    /** 报警类型：高高报警、高、低、低低、状态异常 */
    @Excel(name = "报警类型：高高报警、高、低、低低、状态异常")
    private String alarmType;

    /** 报警阈值（数值） */
    @Excel(name = "报警阈值", readConverterExp = "数=值")
    private BigDecimal thresholdValue;

    /** 报警优先级： 紧急、重要、 一般、其它 */
    @Excel(name = "报警优先级： 紧急、重要、 一般、其它")
    private String priority;

    /** 最大响应时间（秒） */
    @Excel(name = "最大响应时间", readConverterExp = "秒=")
    private Long maxResponseTime;

    /** 最大处理时间（秒） */
    @Excel(name = "最大处理时间", readConverterExp = "秒=")
    private Long maxProcessingTime;

    /** 可能原因 */
    @Excel(name = "可能原因")
    private String possibleCauses;

    /** 响应动作 */
    @Excel(name = "响应动作")
    private String responseAction;

    /** 严重程度：一级  二级  三级 */
    @Excel(name = "严重程度：一级  二级  三级")
    private String severity;

    /** 状态：0停用 1启用 */
    @Excel(name = "状态：0停用 1启用")
    private String status;

    /** 删除标志（0代表存在 1代表删除） */
    private String delFlag;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setPointId(Long pointId) 
    {
        this.pointId = pointId;
    }

    public Long getPointId() 
    {
        return pointId;
    }

    public void setAlarmType(String alarmType) 
    {
        this.alarmType = alarmType;
    }

    public String getAlarmType() 
    {
        return alarmType;
    }

    public void setThresholdValue(BigDecimal thresholdValue) 
    {
        this.thresholdValue = thresholdValue;
    }

    public BigDecimal getThresholdValue() 
    {
        return thresholdValue;
    }

    public void setPriority(String priority) 
    {
        this.priority = priority;
    }

    public String getPriority() 
    {
        return priority;
    }

    public void setMaxResponseTime(Long maxResponseTime) 
    {
        this.maxResponseTime = maxResponseTime;
    }

    public Long getMaxResponseTime() 
    {
        return maxResponseTime;
    }

    public void setMaxProcessingTime(Long maxProcessingTime) 
    {
        this.maxProcessingTime = maxProcessingTime;
    }

    public Long getMaxProcessingTime() 
    {
        return maxProcessingTime;
    }

    public void setPossibleCauses(String possibleCauses) 
    {
        this.possibleCauses = possibleCauses;
    }

    public String getPossibleCauses() 
    {
        return possibleCauses;
    }

    public void setResponseAction(String responseAction) 
    {
        this.responseAction = responseAction;
    }

    public String getResponseAction() 
    {
        return responseAction;
    }

    public void setSeverity(String severity) 
    {
        this.severity = severity;
    }

    public String getSeverity() 
    {
        return severity;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("pointId", getPointId())
            .append("alarmType", getAlarmType())
            .append("thresholdValue", getThresholdValue())
            .append("priority", getPriority())
            .append("maxResponseTime", getMaxResponseTime())
            .append("maxProcessingTime", getMaxProcessingTime())
            .append("possibleCauses", getPossibleCauses())
            .append("responseAction", getResponseAction())
            .append("severity", getSeverity())
            .append("status", getStatus())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
